package com.xframework.security.model;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import com.fasterxml.jackson.annotation.JsonInclude;
import com.xframework.model.BaseModel;

/**
 * 账户.
 */
@JsonInclude(JsonInclude.Include.NON_NULL)
public class SecurityAccount extends BaseModel {
	private String accountId;
	private String accountName;
	private String accountRandom;
	private String accountPassword;
	private String accountRemark;

    private List<Role> roleList;
    private List<Resource> resourceList;
    private String resourceUrls;

	private Map<String, String> accountPropertyMap;

	private String applicationId;
	private Application application;

    private String securityLoginUrl;
    private String securityLogoutUrl;
    private String securityExceptionUrl;
	private boolean hasSession;

	public SecurityAccount() {
		
	}

	public String getAccountId() {
        return accountId;
    }

    public void setAccountId(String accountId) {
        this.accountId = accountId;
    }

	public String getAccountName() {
        return accountName;
	}

	public void setAccountName(String accountName) {
        this.accountName = accountName;
	}

	public String getAccountRandom() {
		return accountRandom;
	}

	public void setAccountRandom(String accountRandom) {
		this.accountRandom = accountRandom;
	}

	public String getAccountPassword() {
        return accountPassword;
	}

	public void setAccountPassword(String accountPassword) {
        this.accountPassword = accountPassword;
	}

	public String getAccountRemark() {
        return accountRemark;
	}

	public void setAccountRemark(String accountRemark) {
        this.accountRemark = accountRemark;
	}

	public List<Resource> getResourceList() {
        return resourceList;
	}

	public void setResourceList(List<Resource> resourceList) {
		this.resourceList = resourceList;
	}

	public List<Role> getRoleList() {
        return roleList;
	}

	public void setRoleList(List<Role> roleList) {
        this.roleList = roleList;
	}

	public String getResourceUrls() {
		return resourceUrls;
	}

	public void setResourceUrls(String resourceUrls) {
		this.resourceUrls = resourceUrls;
	}

	public Map<String, String> getAccountPropertyMap() {
        return accountPropertyMap;
	}

	public void setAccountPropertyMap(Map<String, String> accountPropertyMap) {
		this.accountPropertyMap = accountPropertyMap;
	}

	public String getApplicationId() {
		return applicationId;
	}

	public void setApplicationId(String applicationId) {
		this.applicationId = applicationId;
	}

	public Application getApplication() {
        return application;
	}

	public void setApplication(Application application) {
        this.application = application;
	}

	public String getSecurityLoginUrl() {
		return securityLoginUrl;
	}

	public void setSecurityLoginUrl(String securityLoginUrl) {
		this.securityLoginUrl = securityLoginUrl;
	}

	public String getSecurityLogoutUrl() {
		return securityLogoutUrl;
	}

	public void setSecurityLogoutUrl(String securityLogoutUrl) {
		this.securityLogoutUrl = securityLogoutUrl;
	}

	public String getSecurityExceptionUrl() {
		return securityExceptionUrl;
	}

	public void setSecurityExceptionUrl(String securityExceptionUrl) {
		this.securityExceptionUrl = securityExceptionUrl;
	}

	public boolean getHasSession() {
        return hasSession;
    }

    public void setHasSession(boolean hasSession) {
        this.hasSession = hasSession;
    }
}
